Program Verification using HOL-UNITY

نویسندگان

  • Flemming Andersen
  • Kim Dam Petersen
  • Jimmi S. Pettersson
چکیده

HOL-UNITY is an implementation of Chandy and Misra's UNITY theory in the HOL88 and HOL90 theorem provers. This paper shows how to verify safety and progress properties of concurrent programs using HOL-UNITY. As an example it is proved that a lift-control program satisses a given progress property. The proof is compositional and partly automated. The progress property is decomposed into basic safety and progress properties, which are proved automatically by a developed tactic based on a combination of Gentzen-like proof methods and Pressburger decision procedures. The proof of the decomposition which includes induction is done mechanically using the inference rules of the UNITY logic implemented as theorems in HOL. The paper also contains some empirical results of running the developed tactic in HOL88 and HOL90, respectively. It turns out that HOL90 in average is about 9 times faster than HOL88. Finally, we discuss various ways of improving the tactic.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

∀UNITY: A Theory of General UNITY

UNITY is a simple programming logic to reason about distributed systems. It is especially attractive because of its elegant axiomatical style. Since its power is limited, people introduce variants to extends it with various new functionalities. However, in the axiomatical style it is easy to make a mistake: a seemingly very logical new inference rule may turn out to be unsound. Formal verificat...

متن کامل

Program Verification based on Kleene Algebra in Isabelle/HOL

Schematic Kleene algebra with tests (SKAT) supports the equational verification of flowchart scheme equivalence and captures simple while programs with assignment statements. We formalise SKAT in Isabelle/HOL, using the quotient type package to reason equationally in this algebra. We apply this formalisation to a complex flowchart transformation proof from the literature. We extend SKAT with as...

متن کامل

Compositional Proofs of Concurrent Programs

Project GR/M75440/01, funded by the Engineering and Physical Sciences Research Council (EPSRC), was undertaken to provide a better understanding of compositional reasoning, that is, how to verify systems built from components. It is a continuation of project GR/K57381, Mechanising Temporal Reasoning. A fundamental issue is the representation of program states. The choices are between stronglyan...

متن کامل

Formal Verification of Steady-State Errors in Unity-Feedback Control Systems

The meticulousness of steady-state error analysis of unityfeedback control systems has always been of vital significance as even a trifling glitch in this analysis may result in grievous penalties. To ensure a rigorous steady-state error analysis, this paper presents the formal verification of a generic relationship that is applicable to all kinds of inputs and types of unity-feedback control s...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1993